CC=gcc

ifeq ($(CC), gcc)
CFLAGS=-O3 -W -Wall -ansi -omit-frame-pointer
else
ifeq ($(CC), icc)
CFLAGS=-O3
else
CFLAGS=-O2
endif
endif

all: clean chile

clean:
	rm -f obj/*.o
	rm -f chile

chile: chile.o arith.o bwt.o crc.o error.o gst.o model.o
	$(CC) -lm -o chile obj/chile.o obj/arith.o obj/bwt.o obj/crc.o obj/error.o obj/gst.o obj/model.o
	# cp ./chile ../corpus/chile

chile.o: chile.c
	$(CC) $(CFLAGS) -c chile.c -o obj/chile.o

arith.o: arith.c
	$(CC) $(CFLAGS) -c arith.c -o obj/arith.o

bwt.o: bwt.c
	$(CC) $(CFLAGS) -c bwt.c -o obj/bwt.o

crc.o: crc.c
	$(CC) $(CFLAGS) -c crc.c -o obj/crc.o

error.o: error.c
	$(CC) $(CFLAGS) -c error.c -o obj/error.o

gst.o: gst.c
	$(CC) $(CFLAGS) -c gst.c -o obj/gst.o

model.o: model.c
	$(CC) $(CFLAGS) -c model.c -o obj/model.o
